load("@rules_cc//cc:cc_library.bzl", "cc_library")

package(default_visibility = ["//visibility:public"])

cc_library(
    name = "boost.icl",
    hdrs = glob(
        [
            "include/**/*.hpp",
        ],
        exclude = [
            "include/boost/icl/concept/*.hpp",
            "include/boost/icl/detail/*.hpp",
            "include/boost/icl/interval_*.hpp",
            "include/boost/icl/iterator.hpp",
            "include/boost/icl/type_traits/*.hpp",
        ],
    ),
    features = ["parse_headers"],
    includes = ["include"],
    textual_hdrs = [
        "include/boost/icl/iterator.hpp",
    ] + glob([
        "include/boost/icl/concept/*.hpp",
        "include/boost/icl/detail/*.hpp",
        "include/boost/icl/interval_*.hpp",
        "include/boost/icl/type_traits/*.hpp",
    ]),
    deps = [
        "@boost.assert",
        "@boost.concept_check",
        "@boost.config",
        "@boost.container",
        "@boost.core",
        "@boost.date_time",
        "@boost.detail",
        "@boost.iterator",
        "@boost.move",
        "@boost.mpl",
        "@boost.range",
        "@boost.rational",
        "@boost.static_assert",
        "@boost.type_traits",
        "@boost.utility",
    ],
)
